#pragma once
#include "CDependencyObject.h"

class CTimeSpan;
class CString;

class CTimelineMarker :
	public CDependencyObject
{


private: 
	CTimelineMarker(CCoreServices * pCore);
protected: 
	virtual ~CTimelineMarker();
public: 
	static HRESULT Create(CDependencyObject * * ppObject, CREATEPARAMETERS * pCreate);
	virtual HRESULT InitInstance();
	virtual XUINT32 GetTypeIndex() const;
	static HRESULT CreateInternal(CTimelineMarker * * pNewMarker, CCoreServices * pCore, CTimelineMarker * pSourceMarker);
	static HRESULT CreateInternal(CTimelineMarker * * pNewMarker, CCoreServices * pCore, XFLOAT rTimeSpan, XUINT32 cType, XUINT16 * pType, XUINT32 cText, XUINT16 * pText);
	void OffsetTime(XFLOAT fTimeOffset);
	CTimeSpan * m_pTime;
	CString * m_pType;
	CString * m_pText;
};